package org.gpf.observer;

import java.util.ArrayList;

/**
 * 视频网站某狐实现Subject接口
 * 
 * @author gaopengfei
 * @date 2015年6月4日 上午8:54:38
 */
public class VideoSite implements Subject {

	private ArrayList<Observer> userList; // 观察者列表
	private ArrayList<String> videos; // 视频列表

	public VideoSite() {

		userList = new ArrayList<Observer>();
		videos = new ArrayList<String>();
	}

	@Override
	public void registerObserver(Observer o) {
		userList.add(o);
	}

	@Override
	public void removeObserver(Observer o) {
		userList.remove(o);
	}

	@Override
	public void notifyAllObservers() {
		for (Observer o : userList) {
			o.update(this);
		}
	}

	public void addVideos(String video) {

		videos.add(video);
		notifyAllObservers();
	}

	public ArrayList<String> getVideos() {

		return videos;
	}

	@Override
	public String toString() {

		return videos.toString();
	}
}
